Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cancel RPC tasks and actor machinery greedily #240

Closed
wants to merge 1 commit into from

Conversation

goodboy
Copy link
Owner

@goodboy goodboy commented Oct 4, 2021

Instead of "scheduling" cancel tasks in response to requests just
immediately invoke (via await <target>) the appropriate cancel method.
This completely avoids the case of a "cancel request task being
cancelled". There should be no downside to this approach should be less
racy then prior.

Turns out this actually causes slow downs in certain tests, not sure where yet (likely during tear downs obviously) and not sure if the reduction in racyness is worth that slowdown.

Instead of "scheduling" cancel tasks in response to requests just
immediately invoke (via `await <target>`) the appropriate cancel method.
This completely avoids the case of a "cancel request task being
cancelled". There should be no downside to this approach should be less
racy then prior.
@goodboy goodboy added IPC and transport supervision cancellation SC teardown semantics and anti-zombie semantics labels Oct 4, 2021
@goodboy
Copy link
Owner Author

goodboy commented Oct 14, 2021

Replaced by #245

@goodboy goodboy closed this Oct 14, 2021
@goodboy goodboy deleted the greedy_cancels branch October 14, 2021 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cancellation SC teardown semantics and anti-zombie semantics IPC and transport supervision
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant